#objectDiff
objectdiff on npm
objectDiff.diff(objectA, objectB)
objectDiff.diff({x: 1}, {x: 2})
-> {
changed: "object change",
value: {
x: {
changed: "primitive change",
removed: 1,
added: 2
}
}
}
objectDiff.diff({z: {x: 1}}, {z: {y: 2}})
-> {
changed: "object change",
value: {
z: {
changed: "object change",
value: {
x: {
changed: "removed",
value: 1
},
y: {
changed: "added",
value: 2
}
}
}
}
}
objectDiff.diffOwnProperties(objectA, objectB)
Same as objectDiff.diff, but compares only objects' own properties
function A(){}
A.prototype.x = 1
objectDiff.diff({x: 1}, new A)
-> {changed: "equal", value: {x: 1}}
objectDiff.diffOwnProperties({x: 1}, new A)
-> {changed: "object change", value: {x: {changed: "removed", value: 1}}}
objectDiff.convertToXMLString(diffObject)
Used on the demo page.
Jasmine integration
objectDiff provides toEqualProperties
and toEqualOwnProperties
matchers for Jasmine.
See example spec.